package com.hmall.item.domain.dto;

import cn.hutool.core.bean.BeanUtil;
import com.hmall.item.domain.po.Item;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;
import java.util.Arrays;
import java.util.List;

@Data
@NoArgsConstructor
@AllArgsConstructor
public class ItemDoc implements Serializable {
    private static final long serialVersionUID = 1L;

    /**
     * 商品id
     */
    private Long id;

    /**
     * SKU名称
     */
    private String name;

    /**
     * 价格（分）
     */
    private Integer price;

    /**
     * 商品图片
     */
    private String image;

    /**
     * 类目名称
     */
    private String category;

    /**
     * 品牌名称
     */
    private String brand;

    /**
     * 销量
     */
    private Integer sold;

    /**
     * 评论数
     */
    private Integer commentCount;

    /**
     * 是否是推广广告，true/false
     */
    private Boolean isAD;

    // ----------------------------------------------------
    /**
     * 自动补全字段
     */
    private List<String> suggestion;

    public ItemDoc(Item item) {
        BeanUtil.copyProperties(item, this);
        // 组装suggestion
        this.suggestion = Arrays.asList(this.brand, this.category);
    }
    // ----------------------------------------------------
}